package com.sc.study.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.sc.study.dto.NoteQueryDTO;
import com.sc.study.entity.StudyNote;
import com.sc.study.vo.CardVO;
import com.sc.study.vo.EchartPieVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;

import java.util.List;
import java.util.Map;


/**
 * 笔记映射器
 *
 * @author 徐赫阳
 * @date 2021/09/13
 */
@Mapper
@Component
public interface StudyNoteMapper extends BaseMapper<StudyNote> {

    /**
     * 选择注意列表
     *
     * @param queryDTO 查询dto
     * @return {@link List}<{@link StudyNote}>
     */
    List<StudyNote> selectNoteList(NoteQueryDTO queryDTO);

    /**
     * 选择更多的注意
     *
     * @param queryDTO 查询dto
     * @return {@link List}<{@link StudyNote}>
     */
    List<StudyNote> selectMoreNote(NoteQueryDTO queryDTO);

    /**
     * 选择echart数据
     *
     * @return {@link List}<{@link EchartPieVO}>
     */
    List<EchartPieVO> selectEchartData();

    /**
     * 选择日期地图
     *
     * @param year  一年
     * @param month 月
     * @return {@link List}<{@link Map}<{@link String}, {@link String}>>
     */
    List<Map<String,String>> selectDateMap(@Param("year")String year,@Param("month")String month);

    /**
     * 选择报告日期
     *
     * @param date 日期
     * @return {@link List}<{@link StudyNote}>
     */
    List<StudyNote> selectNoteByDate(String date);

}

